/**
 * 纯函数 Pure Function
 * - 相同的输入永远会得到相同的输出. Given the same input, the function will always return the same result.
 * React 是围绕着纯函数的概念设计的，它希望我们创建的每一个组件都是纯函数，比如
 * same props -> Component -> same JSX
 *          -> skip re-rendering ->
 * 这种理念出于性能考虑，如果组件是纯函数组件，那么 React 可以很容易的判断组件是否需要重新渲染
 * 如果是纯组件，React 需要做的就是比较 props 等是否发生了变化，如果没有变化，那么就不需要重新渲染
 */

// let count = 0;

function Message() {
  let count = 0; // 这样就是纯函数了
  count++;
  console.log("Message called " + count + " times");
  return <div>Message {count}</div>;
}

export default Message;
